import Vue from 'vue';
import { currencyFormat, currencyToChinese } from 'utils/currency.js';

/**
 * 货币格式化过滤器
 *
 * 12345 => $12,345.00
 *
 * @example  {{ price | currency_format('￥')}}
 *
 * @param {String} symbol        货币符号  默认为 $
 * @param {Number} decimals      小数点个数  默认为2位
 * @param {Object} options       设置对象
 *        --- options.symbolOnLeft   货币符号是否在左边显示   默认为true
 *        --- options.thousandsSeparator   千分位符号  默认为 ','
 *        --- options.spaceBetweenAmountAndSymbol   货币符号与值之间添加一个空格 默认没有空格
 *        --- options.decimalSeparator   货币中的小数点的符号  默认为 '.'
 */
Vue.filter('currency_format', (number, symbol, decimals, options) => {
  return currencyFormat(number, symbol, decimals, options);
});

/**
 * 货币中文格式化处理
 *
 * 100.1 => 一百零一
 *
 * @example  {{ 100.1 | currency_to_chinese() }}
 *
 * @param {Number} number      货币的数值
 *
 */
Vue.filter('currency_to_chinese', (number) => {
  return currencyToChinese(number);
});
